ESTI019 - Codificação de Sinais Multimídia

Lab7 - Codificação de Voz e Áudio

Profs. Celso S. Kurashima e Mário Minami

Alunos:

  1. João Vitor Garrido - RA: 11201811064
  2. Gabriel de Oliveira Souza - RA: 11201811094
  3. Victor Gabriel Ferreira dos Santos - RA: 11201811459

1. Introdução

Neste laboratório, foram utilizadas as bibliotecas Scipy, Librosa e AudioLazy, dentro do ambiente de desenvolvimento do Google Colab, para estudar técnicas de processamento digital de sinais aplicadas na análise de áudios de voz, bem como sua codificação e modelagem, utilizando a linguagem Python.

Dentre as atividades de processamento desenvolvidas, foi possível atingir os seguintes objetivos:

Objetivos:

  1. Determinação dos parâmetros LPC

  2. Separação Sonora/Surda

  3. Espectro e Envoltória LP

  4. Comparação de Codificações MPEG

Link para o ambiente Colab utilizado no desenvolvimento desta prática:

Importando todas as Bibliotecas utilzadas durante esta prática de laboratório:

Adquirindo os Arquivos de áudio do repositório do GitHub:

2. Áudio I - Leva Catia Falda

2.1.Separação de uma Estrofe

2.2.Cálculo dos Parâmetros LPC, separação U/UV e Espectro + Envoltória LPC

Nesta Parte do laboratório, determinamos os parâmetros LPC para modelagem das vozes, através da resposta em frequência do Filtro com os parâmetros LPC, através da função signal.freqz(1,a_filter.numerator,worN=int(Nj/2)).

Adicionalmente, pudemos determinar o número de sonoros e surdos, de acordo com um limiar de amplitude do espectro de energia do áudio analisado.

  1. Para valores de energia acima do limiar, temos que os sons são sonoros;
  2. Para valores de energia abaixo do limiar, temos que os sons são surdos.

Finalmente, foi possível plotar os gráficos dos segmentos sonoros e surdos do trecho extraído do aúdio original, trazendo a resposta em frequência do filtro LPC modelado, bem como a transformada de fourier para o sinal no trecho analisado.

3. Áudio II - Minha Terra

3.1.Separação Estrofe

3.2.Cálculo dos Parâmetros LPC, separação U/UV e Espectro + Envoltória LPC

Nesta Parte do laboratório, determinamos os parâmetros LPC para modelagem das vozes, através da resposta em frequência do Filtro com os parâmetros LPC, através da função signal.freqz(1,a_filter.numerator,worN=int(Nj/2)).

Adicionalmente, pudemos determinar o número de sonoros e surdos, de acordo com um limiar de amplitude do espectro de energia do áudio analisado.

  1. Para valores de energia acima do limiar, temos que os sons são sonoros;
  2. Para valores de energia abaixo do limiar, temos que os sons são surdos.

Finalmente, foi possível plotar os gráficos dos segmentos sonoros e surdos do trecho extraído do aúdio original, trazendo a resposta em frequência do filtro LPC modelado, bem como a transformada de fourier para o sinal no trecho analisado.

3.3. Espectrograma dos áudio

Nesta parte do laboratório, pudemos visualizar os espectrogramas dos áudios gravados pelos integrantes, mostrando a potência, em escala de decibéis (dB), bem como o espectrograma de frequência para cada um dos áudios originais.

Para converter a amplitude para Decibéis, foi utilizada a função librosa.amplitude_to_db(), tomando como referência o valor máximo do espectro.

Para plotar o gráfico, utilizamos a função librosa.display.specshow()

Abaixo, temos a Função desenvolvida para plotar os espectrogramas (em decibéis), dos arquivos de áudio do grupo, utilizando as bilbioteca Librosa e MatplotLib para visualização do espectro

4. Áudio III - Liturgia Lida

4.1.Separação Estrofe

4.2.Cálculo dos Parâmetros LPC, separação U/UV e Espectro + Envoltória LPC

Nesta Parte do laboratório, determinamos os parâmetros LPC para modelagem das vozes, através da resposta em frequência do Filtro com os parâmetros LPC, através da função signal.freqz(1,a_filter.numerator,worN=int(Nj/2)).

Adicionalmente, pudemos determinar o número de sonoros e surdos, de acordo com um limiar de amplitude do espectro de energia do áudio analisado.

  1. Para valores de energia acima do limiar, temos que os sons são sonoros;
  2. Para valores de energia abaixo do limiar, temos que os sons são surdos.

Finalmente, foi possível plotar os gráficos dos segmentos sonoros e surdos do trecho extraído do aúdio original, trazendo a resposta em frequência do filtro LPC modelado, bem como a transformada de fourier para o sinal no trecho analisado.

4.3. Espectrogramas do áudio

5. Conclusão

Neste laboratório, através da manipulação de dados de áudio, foi possível aplicar técnicas de análise de sinais em arquivos de áudio/voz.

Através das bibliotecas scipy e librosa e audiolazy, foi possível realizar processos de análiticos para exploração de segmentos e amostras de áudio.

A partir dos sinais analisados, foram extraídas componentes como:

Desta forma, através da determinação dos segmentos sonoros e surdos que se deu através da análise do limiar do espectro energia do áudio, pudemos estudar separadamente as repostas em frequência do modelo de filtro LPC, versus a resposta fornecida pela transformada de Fourier aplicada à cada trecho dos áudios analisados.